package alg;

/**
 * 给定一个排序数组和一个目标值，在数组中找到目标值，并返回其索引。如果目标值不存在于数组中，返回它将会被按顺序插入的位置。
 * 示例 1:输入: nums = [1,3,5,6], target = 5    输出: 2
 * 示例 2:输入: nums = [1,3,5,6], target = 2    输出: 1
 */
/*
思路：
遍历数组，依次与目标值进行比较，
如果与目标值相等则输出下标。
如果没有目标值相等的数，则找到大于目标值最近数的下标
 */

public class SearchInsertLocation {
    public static void main(String[] args) {
        int[] arr = {1,3,5,6};
        System.out.println(searchInsert(arr,6));
    }
    public static int searchInsert(int[] nums, int target) {
        int num = 0;
        if (target<nums[0]){
            return num;
        }
        if (target>nums[nums.length-1]) {
            num = nums.length;
            return num;
        }
        for (int i = 0; i < nums.length; i++) {
            if (nums[i]==target){
                num = i;
            }
            if (target>nums[i] && target<nums[i+1]){
                num = i+1;
            }
        }
        return num;
    }
}
